Computer processors execute instructions using one or more clock cycles. However, when a processor is not fully utilized, it is idle during some of these clock cycles. The percentage of time in which the processor is not idle is often referred to as that processor's “utilization”.
In many systems, periodicities and trends can be identified that allow future utilization to be predicted. For this reason, utilization data can be very useful for regulation and planning purposes. For example, some processors have low power modes that can be entered to save energy during prolonged low utilization. In data centers with multiple servers, workloads can be moved from a server with high processor utilization to a server with low processor utilization to lower the risk of bottlenecks or faults. Alternatively, workloads can be moved from low utilization servers to moderate utilization servers so that the former can be shut down to save energy. If most servers in a data enter are highly utilized, utilization data can be used to suggest what resources need to be added to maintain a smoothly running system.